package com.googlecode.scenemaker3d.controller
{
	import com.googlecode.scenemaker3d.model.VO_Object3D;
	
	import mx.collections.ArrayCollection;
	
	import org.papervision3d.core.math.Number3D;
	
	import com.googlecode.scenemaker3d.view.timeline.KeyFrame;
	import com.googlecode.scenemaker3d.view.timeline.SplitMarker;
	
	public interface ITimelineController
	{		
		function insertKeyFrame(time:int = undefined, pos:Number3D= null):void;
		
		function removeKeyFrame(keyFrame:KeyFrame):void;
		
		function removeAllKeyFrames(VO:VO_Object3D):void;
		
		function removeAllHideMarkers(VO:VO_Object3D):void;
		
		function insertHideMarker(yOffset:uint):void;
		
		function removeHideMarker(hideMarker:SplitMarker):void;
		
		function insertGlobalMarker():void;
		
		function removeGlobalMarker(id:String):void;
		
		function removeAllGlobalMarkers():void;
		
		function calculateTweens(keyFrames:ArrayCollection):void;
		
		function set selectedTimeInterval(time:uint):void;
		
		function get selectedTimeInterval():uint;
	}
}